﻿Imports LibreriasMiniJuegos
Public Class frmMapaHuida
    Private HeroeHuida As New JuegoControlHeroe("Héroe") 'Probaré haciendo los new aquí a ver si funciona si no se cambian y ya. -aunque a mi me da que no es buena idea, de un experimento que hice-
    Private MapaHuida As New JuegoMapa(10, 10)
    'Esta puesto el evento de colision.
    Private IAs As New List(Of JuegoControlIA) From {New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False), New JuegoControlIA(False)}

    Private Sub frmMapaHuida_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        MapaHuida.AñadirAreaDeLuto() 'Añado el área de luto
        MapaHuida.ImplantarMapaEn(Me) 'Agrego -evidentemente- el mapa al form -como no tendrá zonas especiales pues con esto sirve.
        Dim contador As Byte = 0
        For Each Controles As Control In Me.Controls 'Agrego su respectivo control a las IA correspondientes y su comportamiento y el boton para el héroe.
            If Controles.GetType = GetType(PictureBox) Then
                If Controles.Name.Contains("IA") Then
                    IAs(contador).AñadirControl(Controles) 'Agrego el control
                    IAs(contador).AñadirComportamiento(JuegoControlIA.ElComportamiento.Rectilineo) 'Su comportamiento
                    AddHandler IAs(contador).ColisionCon, AddressOf IAs_ColisionCon 'Añado la ia al evento correspondiente.
                    contador = contador + 1
                End If
                If Controles.Name.Contains("Heroe") Then 'Aquí para el héroe
                    HeroeHuida.AñadirControl(Controles) 'Le añado su control
                    HeroeHuida.Teletransportar(1, 1, MapaHuida)
                End If
            End If
            '''
        Next
        'TODO terminar
    End Sub

    Private Sub IAs_ColisionCon(ByRef Sender As LibreriasMiniJuegos.JuegoControlIA, ByVal e As LibreriasMiniJuegos.JuegoColisionControlesEventArgs)


    End Sub
    Private Sub frmMapaHuida_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

        If e.KeyCode = Keys.A Then HeroeHuida.Moverme(JuegoControl.Donde.Izquierda, MapaHuida)
        If e.KeyCode = Keys.D Then HeroeHuida.Moverme(JuegoControl.Donde.Derecha, MapaHuida)
        If e.KeyCode = Keys.W Then HeroeHuida.Moverme(JuegoControl.Donde.Arriba, MapaHuida)
        If e.KeyCode = Keys.S Then HeroeHuida.Moverme(JuegoControl.Donde.Abajo, MapaHuida)


    End Sub
End Class